package com.kan.awaits.sql;

import com.kan.awaits.Criteria;
import com.kan.awaits.Inserter;
import com.kan.awaits.Query;
import com.kan.awaits.TableMeta;
import com.kan.awaits.TypeTable;
import com.kan.awaits.Updator;

/**
 * SQL构造器
 * 
 * @author Elva
 * 
 */
public interface SQLBuilder
{
	public String buildTableDDL(TypeTable typeTable, TableMeta<?> tableMeta);

	public Query buildQuery(Criteria<?> criteria);

	public Query buildCountQuery(Criteria<?> criteria);

	public Query buildUpdatorQuery(Updator<?> updator);

	public Query buildInserter(Inserter inserter);
}
